package com.gzhryc.net_marketing.cloud.micro.api.dto.v1.team;

import com.gzhryc.common.api.SecurityResponse;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

public class TeamPayApplyListResponse extends SecurityResponse<TeamPayApplyListResponse.Body> {

	private static final long serialVersionUID = 1L;

	public TeamPayApplyListResponse() {
		this.body = new Body();
	}

	public TeamPayApplyListResponse(Integer code) {
		this.body = new Body();
		this.code = code;
	}

	public TeamPayApplyListResponse(Integer code, String msg) {
		this.body = new Body();
		this.code = code;
		this.msg = msg;
	}

	public static class Body implements Serializable {

		private static final long serialVersionUID = 1L;

		private List<Item> items;

		public Body(){
			this.items = new ArrayList<>();
		}

		public List<Item> getItems() {
			return items;
		}

		public void setItems(List<Item> items) {
			this.items = items;
		}
	}

	public static class Item implements Serializable {

		private static final long serialVersionUID = 1L;

		private Long applyId;
		private String goodsId;
		private Integer teamMemberTotal;
		private Integer teamMemberCount;
		private Integer gainCount;
		private List<MemberItem> members;

		public Item() {
			this.members = new ArrayList<MemberItem>();
		}

		public Long getApplyId() {
			return applyId;
		}

		public void setApplyId(Long applyId) {
			this.applyId = applyId;
		}

		public String getGoodsId() {
			return goodsId;
		}

		public void setGoodsId(String goodsId) {
			this.goodsId = goodsId;
		}

		public Integer getTeamMemberTotal() {
			return teamMemberTotal;
		}

		public void setTeamMemberTotal(Integer teamMemberTotal) {
			this.teamMemberTotal = teamMemberTotal;
		}

		public Integer getTeamMemberCount() {
			return teamMemberCount;
		}

		public void setTeamMemberCount(Integer teamMemberCount) {
			this.teamMemberCount = teamMemberCount;
		}

		public Integer getGainCount() {
			return gainCount;
		}

		public void setGainCount(Integer gainCount) {
			this.gainCount = gainCount;
		}

		public List<MemberItem> getMembers() {
			return members;
		}

		public void setMembers(List<MemberItem> members) {
			this.members = members;
		}
	}

	public static class MemberItem implements Serializable {

		private static final long serialVersionUID = 1L;

		private Long memberId;
		private String nickname;
		private String faceImg;
		private Integer type;

		public Long getMemberId() {
			return memberId;
		}

		public void setMemberId(Long memberId) {
			this.memberId = memberId;
		}

		public String getNickname() {
			return nickname;
		}

		public void setNickname(String nickname) {
			this.nickname = nickname;
		}

		public String getFaceImg() {
			return faceImg;
		}

		public void setFaceImg(String faceImg) {
			this.faceImg = faceImg;
		}

		public Integer getType() {
			return type;
		}

		public void setType(Integer type) {
			this.type = type;
		}
	}
}
